function(_add_dialect)
  set(LLVM_TARGET_DEFINITIONS InputOps.td)
  mlir_tablegen(InputOps.h.inc -gen-op-decls)
  mlir_tablegen(InputOps.cpp.inc -gen-op-defs)
  mlir_tablegen(InputTypes.h.inc -gen-typedef-decls)
  mlir_tablegen(InputTypes.cpp.inc -gen-typedef-defs)
  mlir_tablegen(InputDialect.h.inc -gen-dialect-decls -dialect=iree_input)
  mlir_tablegen(InputDialect.cpp.inc -gen-dialect-defs -dialect=iree_input)
  add_public_tablegen_target(IREEInputIncGen)
  add_dependencies(mlir-headers IREEInputIncGen)
endfunction()

_add_dialect()
